package com.wl.dzt.sys.util;

import com.wl.dzt.sys.core.dao.curd.validate.Validate;
import com.wl.dzt.sys.core.dao.select.order.Sort;
import com.wl.dzt.sys.core.dao.select.term.Term;
import com.google.common.reflect.TypeToken;

import java.lang.reflect.Type;
import java.util.List;
import java.util.Map;

/**
 * @author wl_code@163.com
 * @version 1.0
 * @date 2018/7/5/005
 * @description gson格式转换参数对象
 */
public class JsonFormat {

    /**
     * List<Term> gson格式
     */
    public static final Type LIST_TERM_TYPE = new TypeToken<List<Term>>() {
    }.getType();

    /**
     * List<Sort> json格式
     */
    public static final Type LIST_SORT_TYPE = new TypeToken<List<Sort>>() {
    }.getType();

    /**
     * List<Validate> json格式
     */
    public static final Type LIST_VALIDATE_TYPE = new TypeToken<List<Validate>>() {
    }.getType();

    /**
     * List<Map<String,String>> json格式
     */
    public static final Type LIST_MAP = new TypeToken<List<Map<String, String>>>() {
    }.getType();

    /**
     * List<Map<String,Object>> json格式
     */
    public static final Type LIST_MAP_OBJECT = new TypeToken<List<Map<String, Object>>>() {
    }.getType();

}
